package com.utilities;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;


public class DateTimeUtil {
	      /*
	       * 本函数作用是把一个标准的UNIX时间戳转换为指定格式的时间字符串
	       * 
	       * 标准的UNIX时间戳是精确到秒的。
	       * 
	       * 参数timstamp是一个long类型的时间戳
	       * 
	       * 参数formater是日期时间格式例如yyyy-MM-dd HH:mm:ss
	       * 
	       * 更多的格式可以参照java文档查看SimpleDateFormat的参数
	       * 
	       * 注意：
	       * 
	       * timstamp精确到秒不是毫秒，1秒=1000毫秒
	       * 
	       * 如果你的timstamp是精确到毫秒的,传入参数时需要除以1000转换为秒级的时间戳
	       * 
	       * 例如：new Date().getTime()获得的就是毫秒级的时间戳
	       * 
	       * 那么你就应该这样使用
	       * 
	       * DateTimeUtil.toString("yyyy-MM-dd HH:mm:ss",(new Date().getTime())/1000)
	       * 
	       * */
         public  static String toString(String formater,long timstamp){
        	SimpleDateFormat dateFormater=new SimpleDateFormat(formater);
        	//测试发现SimpleDateFormat.format接收的是毫秒级的时间戳
        	//所以这里就乘以1000转为毫秒
			return dateFormater.format(timstamp*1000);
			
         }
         /*
          * 本方法作用是把一个字符串格式的时间转换为标准的UNIX时间戳
          * 
          *  标准的UNIX时间戳是精确到秒的。
          * 
          * dateTimString是字符串形式的日期时间
          * 
          * formater是日期时间格式例如yyyy-MM-dd HH:mm:ss
          * 
	      * 更多的格式可以参照java文档查看SimpleDateFormat的参数
	      * 
	      * 注意：
	      * 
	      * formater的格式必须和dateTimString日期时间格式一致
	      * 
          * 比如dateTimString是2012-12-12 12:12:12
          * 
          * 那么formater必须是对应的yyyy-MM-dd HH:mm:ss
          * 
          * 使用示例：
          * 
          * DateTimeUtil.toTimestamp("yyyy-MM-dd HH:mm:ss","2012-12-12 12:12:12")
          * 
          * */
         public static long  toTimestamp(String formater,String dateTimString) {
        	 SimpleDateFormat dateFormater=new SimpleDateFormat(formater);
        	 long timstamp=0l;
 			try {
 				timstamp=dateFormater.parse(dateTimString).getTime()/1000;
			} catch (ParseException e) {
				e.printStackTrace();
			}
			return timstamp;
		}
}

